package com.ruoyi.zhgd.domain.bo;

import com.ruoyi.common.core.validate.AddGroup;
import com.ruoyi.common.core.validate.EditGroup;
import lombok.Data;
import lombok.EqualsAndHashCode;
import javax.validation.constraints.*;

import java.math.BigDecimal;
import java.util.Date;

import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 压浆结果业务对象 grouting_result
 *
 * @author zyb
 * @date 2023-09-11
 */

@Data
@EqualsAndHashCode(callSuper = true)
public class GroutingResultBo extends BaseEntity {

    /**
     * id
     */
    @NotBlank(message = "id不能为空", groups = { EditGroup.class })
    private String id;

    /**
     * 设备编号
     */
    @NotBlank(message = "设备编号不能为空", groups = { AddGroup.class, EditGroup.class })
    private String deviceNumber;

    /**
     * 梁号
     */
    @NotBlank(message = "梁号不能为空", groups = { AddGroup.class, EditGroup.class })
    private String beamNumber;

    /**
     * 孔号
     */
    @NotBlank(message = "孔号不能为空", groups = { AddGroup.class, EditGroup.class })
    private String holeNumber;

    /**
     * 压浆模式
     */
    @NotBlank(message = "压浆模式不能为空", groups = { AddGroup.class, EditGroup.class })
    private String groutingMode;

    /**
     * 压浆日期
     */
    @NotNull(message = "压浆日期不能为空", groups = { AddGroup.class, EditGroup.class })
    private Date groutingDate;

    /**
     * 配合比（水泥：添加剂：水）
     */
    @NotBlank(message = "配合比（水泥：添加剂：水）不能为空", groups = { AddGroup.class, EditGroup.class })
    private String mixRatio;

    /**
     * 水胶比
     */
    @NotBlank(message = "水胶比不能为空", groups = { AddGroup.class, EditGroup.class })
    private String waterCementRatio;

    /**
     * 搅拌时间（以秒为单位）
     */
    @NotNull(message = "搅拌时间（以秒为单位）不能为空", groups = { AddGroup.class, EditGroup.class })
    private Integer mixingTime;

    /**
     * 压浆开始时间
     */
    @NotNull(message = "压浆开始时间不能为空", groups = { AddGroup.class, EditGroup.class })
    private Date startTime;

    /**
     * 压浆结束时间
     */
    @NotNull(message = "压浆结束时间不能为空", groups = { AddGroup.class, EditGroup.class })
    private Date endTime;

    /**
     * 进浆压力（以MPa为单位）
     */
    @NotNull(message = "进浆压力（以MPa为单位）不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal inflowPressure;

    /**
     * 返浆压力（以MPa为单位）
     */
    @NotNull(message = "返浆压力（以MPa为单位）不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal backflowPressure;

    /**
     * 持压时间（以秒为单位）
     */
    @NotNull(message = "持压时间（以秒为单位）不能为空", groups = { AddGroup.class, EditGroup.class })
    private Integer holdingTime;

    /**
     * 进浆量（以升为单位）
     */
    @NotNull(message = "进浆量（以升为单位）不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal inflowVolume;

    /**
     * 理论进浆量（以升为单位）
     */
    @NotNull(message = "理论进浆量（以升为单位）不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal theoreticalInflowVolume;

    /**
     * 真空泵压力（以MPa为单位）
     */
    @NotNull(message = "真空泵压力（以MPa为单位）不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal vacuumPumpPressure;

    /**
     * 记录状态
     */
    @NotBlank(message = "记录状态不能为空", groups = { AddGroup.class, EditGroup.class })
    private String status;
    /**
     * 通过情况
     */
    private String tgCondition;
    /**
     * 冒浆情况
     */
    private String mjCondition;
    private String linkCode;
    private String resultId;

}
